package com.demo.structural.flyweight;

/**
 * 享元模式
 * 享元模式的主要目的是实现对象的共享，即共享池，当系统中对象多的时候可以减少内存的开销，在一个系统中
 * 如果有多个相同的对象，那么只共享一份就可以了，不必每个都去实例化一个对象。在JAVA语言中，String类型就是使用了享元模式。
 * @author allen
 *
 */
public class Test {
	
	public static void main(String[] args) {
		FlyweightFactory flyweightFactory = new FlyweightFactory();
		flyweightFactory.getFlyWeight("twitter");
		flyweightFactory.getFlyWeight("Google");
		flyweightFactory.getFlyWeight("Google");
		flyweightFactory.getFlyWeight("Yahoo");
		System.out.println("已存在对象数量"+flyweightFactory.getFlyweightSize()); 
	}

}
